package com.example.cwt101_group.utils;

public class R<T> {
    private int code; // 状态码  
    private String message; // 消息  
    private T data; // 数据  
  
    // 构造方法  
    public R() {  
    }  
  
    // 带参数的构造方法  
    public R(int code, String message, T data) {  
        this.code = code;  
        this.message = message;  
        this.data = data;  
    }  
  
    // Getter 和 Setter 方法  
    public int getCode() {  
        return code;  
    }  
  
    public void setCode(int code) {  
        this.code = code;  
    }  
  
    public String getMessage() {  
        return message;  
    }  
  
    public void setMessage(String message) {  
        this.message = message;  
    }  
  
    public T getData() {  
        return data;  
    }  
  
    public void setData(T data) {  
        this.data = data;  
    }  
  
    // 可能还有其他方法，如成功、失败等快捷方法  
    public static <T> R<T> ok(T data) {
        return new R<>(200, "成功", data);  
    }  
  
    public static <T> R<T> fail(String message) {  
        return new R<>(500, message, null);  
    }  
}